package com.iris.live.services.services;

import com.iris.live.services.models.PageData;
import com.iris.live.services.models.RequestBase;
import com.iris.live.services.models.ResultData;

import javax.servlet.http.HttpServletResponse;
import java.util.Map;

/**
 * 财务系统对接模块(核销模块)--业务层
 */
public interface FinanceWriteOffService {

    /**
     * 核销 -->核销详情 -->订单信息
     */
    PageData getWriteOffOrder(String quotedNum);

    /**
     * 核销 -->核销详情 -->核销明细
     */
    PageData getWriteOffDetail(String FinId,Integer pageSize,Integer pageIndex);

    /**
     * 核销 -->核销操作 -->核销保存
     */
    ResultData saveWriteOffAccount(FinanceReceivablesService.ReceivablesAndRefundRequest params) throws Exception;

    /**
     * 核销模块列表查询
     */
    PageData getFinanceWriteOff(String permit,FinanceWriteOffRequest request);

    /**
     * 核销模块主界面 -->导出EXCLE
     */
    void exportFinanceWriteOff(String permit,HttpServletResponse response, Map map,RequestBase request);

    /**
     * 核销列表查询接口 Body
     */
    static class FinanceWriteOffRequest extends RequestBase{

        public String orderType;    //订单类型
        public String sc;         //销售顾问
        public String carType;     //交车状态
        public String idCardNumber;//身份证号码
        public String orderId;     //订单号
        public String custName;    //客户姓名
        public String custPhone;   //联系电话
        public String frameNo;    //车架号
        public String hangAccountId; //挂账单号

        //添加以下字段 用于红冲列表
        public String documentsType; //单据类型
        public String documentsId; //单据号
        public String SourceDocumentsId; //来源单据号
        public String documentDate;   // 单据日期
    }
}
